package lpg;

class RuleAllocationElement
{
    String name = null;
    boolean isTerminalClass = false;
    boolean needsEnvironment = false;
    ListKind listKind = ListKind.NOT_A_LIST;
    int listSymbol = 0;
    int listPosition = 0;
    int elementTypeSymbolIndex = 0;
    int elementSymbol = 0;
    int elementPosition = 0;

    static enum ListKind
    {
        NOT_A_LIST,
        EMPTY,
        SINGLETON,
        LEFT_RECURSIVE_EMPTY,
        RIGHT_RECURSIVE_EMPTY,
        LEFT_RECURSIVE_SINGLETON,
        RIGHT_RECURSIVE_SINGLETON,
        ADD_ELEMENT,
        COPY_LIST;
    }

}
